package ec.edu.uce.tour.facade;

import java.util.List;

import ec.edu.uce.tour.dao.util.ParametroSentencia;
import ec.edu.uce.tour.dto.CiudadDTO;
import ec.edu.uce.tour.dto.ProvinciasDTO;
import ec.edu.uce.tour.dto.SelectOneListDTO;
import ec.edu.uce.tour.excepcion.UceTourException;

/**
 * Fachada que hace la llamada a los m&eacute;todos 
 * 
 * @author 
 *
 */
public interface UceTourGeneralServicio {

	public List<SelectOneListDTO> obtenerDatosSelectList(Class<?> nombre, String campoId, String campoValue,String estadoCampo, ParametroSentencia parametro) throws UceTourException;
	
	public <T> List<T> obtenerListaCatalogos(Class<T> nombre) throws UceTourException;
	
	public  void modificarCatalogo(Object catalogo)  throws UceTourException;
	
	public  void guardarCatalogo(Object catalogo) throws UceTourException;
	
	public Object cargarCatalogoPorId(Class<?> nombre, Integer idCatalogo) throws UceTourException;
	
	public List<CiudadDTO> cargarListaCiudadesPorIdPais(Integer idPais) throws UceTourException;
	
	public List<CiudadDTO> cargarListaProvinciasPorIdPais(Integer idPais)  throws UceTourException;
	
	public List<ProvinciasDTO> cargarProvinciasPorPais(Integer idPais)  throws UceTourException;
}
